-- CALC_CAVE_BONUS_22

-- 计算光/暗元素洞窟的奖励
-- @param user    玩家对象
-- @param args    奖励计算参数
-- @param grade   副本难度
-- @param layer   地牢层数
return function(user, args, grade, layer)
    -- caution：如果修改该公式，服务器请一并修改

    -- 获取中心目标格子的class
    local grid = DungeonInstanceM.getTargetGrid();
    local type = grid.type;

    if type == GRID_TYPE_ELEM_MINE then
        -- 元素矿脉
        return FormulaM.invoke("CALC_ELEM_MINE_BONUS", ME.user, grid.elem_type);
    elseif type == GRID_TYPE_FOUNTAIN then
        -- 15%的魔法值
        local mp = math.modf(user:queryAttrib("max_mp") * 15 / 100);
        return { ["bonus"] = { { 2, "mp", mp, }, }, };
    else
        return {};
    end
end
